package com.jintoufs.service.scene;

import com.jintoufs.dao.QueryFilters;
import com.jintoufs.domain.hotel.HotelOrder;
import com.jintoufs.domain.scene.SceneOrder;
import com.jintoufs.domain.scene.SceneOrderDetail;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * Created by pengyang on 2017/12/30.
 */
public interface SceneOrderService {
    /**
     * 保存订单
     * @param sceneOrder
     * @return
     */
    SceneOrder saveSceneOrder(SceneOrder sceneOrder);

    /**
     * 保存订单详情
     * @param sceneOrderDetail
     * @return
     */
    SceneOrderDetail saveSceneOrderDetail(SceneOrderDetail sceneOrderDetail);

    /**
     * 更新订单
     * @param sceneOrder
     * @return
     */
    SceneOrder updateOrder(SceneOrder sceneOrder);

    /**
     * 根据transactionId获取订单
     * @param transactionId
     * @return
     */
    SceneOrder getOrderByTransactionId(String transactionId);

    List<Map<String,Object>> selectByParam(Map<String,Object>  param);

    List<Map<String,Object>> selectByFilter(QueryFilters filters);

    SceneOrder getById(String id);

    void payConfirm(String id);

    Map<String,List<String>> getIndexData(Integer num,String customerId);

    List<Map<String,Object>> getByParam(Map<String,Object>  param);


    Map getOrderPriceAndCostByOrderId(String orderId);

    List<SceneOrder> getNoConfirm(Map<String,Object> param);

    int updateOrderNew(Map param);
}
